#ifndef MAINWINDOW_H
#define MAINWINDOW_H

#include <QMainWindow>

class QAction;
class QMenu;
class QPlainTextEdit;
class GLWidget;
class FeatureWidget;
class Document;
class MyGLWidget;

class MainWindow : public QMainWindow
{
	Q_OBJECT

public:
	MainWindow();
	~MainWindow();

protected:
	void closeEvent(QCloseEvent *event);

	private slots:
		void open();
		void about();
		void pause();			//pause animation
		void reset();			//reset animation

private:
	void createActions();
	void createMenus();
	void createToolBars();
	void createStatusBar();
	void createDockWindows();
	void readSettings();
	void writeSettings();
	void loadFile(const QString &fileName);
	void setCurrentFile(const QString &fileName);
	QString strippedName(const QString &fullFileName);

	QString curFile;

	QMenu *fileMenu;
	QMenu *editMenu;
	QMenu *helpMenu;
	QToolBar *fileToolBar;
	QToolBar *editToolBar;
	QAction *openAct;
	QAction *pauseAct;
	QAction *exitAct;
	QAction *aboutAct;
    QAction *aboutQtAct;
	QAction *resetAct;

    MyGLWidget *glView;

	bool isPause;

public:
	static QPlainTextEdit *textEdit;

};

#endif
